from django.db import models


class Area(models.Model):
    """行政区划"""
    name = models.CharField(max_length=20, verbose_name='名称')
    # 由于省市区都是这个模型,故采取自关联一对多
    # SET_NULL 置空模式，删除的时候，外键字段被设置为空，前提就是blank=True, null=True,定义该字段的时候，允许为空。
    parent = models.ForeignKey('self', on_delete=models.SET_NULL,related_name='subs', null=True, blank=True, verbose_name='上级行政区划')

    class Meta:
        db_table = 'tb_areas'
        verbose_name = '行政区划'
        verbose_name_plural = verbose_name

    def __str__(self):
        """配合字段StringRelatedField使用"""
        return self.name
